A cgal-based implementation for the Voronoi diagram of ellipses
نویسندگان
چکیده
We present a C++ open-source implementation of an incremental algorithm for the computation of the Voronoi diagram of ellipses in the Euclidean plane. This is the first complete implementation, under the exact computation paradigm, for the given problem. It is based on the cgal package for the Apollonius diagram in the plane: exploiting the generic programming principle, our main additions concern the predicates. The ellipses are input in parametric representation, which allows us to develop a GUI for input and output. The software concerns non-intersecting ellipses, but the extension to the general case is possible. We develop practical algebraic methods, including an interval Newton solver, bivariate polynomial interpolation, and trivariate system resultant computation, and exploit the factorization of resultants in order to arrive at an efficient and exact C++ implementation of InCircle . The code is up to two orders of magnitude slower than the cgal Apollonius package on circles, which comes as no surprise. We also test different sets of ellipses; as a ballmark estimate, the current version spends about a second to insert a new ellipse, when few degeneracies occur. The software is connected to algebraic library synaps and, through it, to libraries mpfr and ntl, hence illustrating the concept of algebraic support for geometric computing; it is targeted for inclusion in the cgal library.
منابع مشابه
ACS Algorithms for Complex Shapes with Certified Numerics and Topology Voronoi diagram of ellipses: cgal-based implementation
We present a C++ open-source implementation of an incremental algorithm for the computation of the Voronoi diagram of ellipses in the Euclidean plane. This is the first complete implementation, under the exact computation paradigm; it also computes the approximate diagram with any given precision. It is based on the cgal package for the Apollonius diagram. The ellipses are given in parametric r...
متن کاملExact Voronoi diagram of smooth convex pseudo-circles: General predicates, and implementation for ellipses
We examine the problem of computing exactly the Voronoi diagram (via the dual Delaunay graph) of a set of, possibly intersecting, smooth convex pseudocircles in the Euclidean plane, given in parametric form. Pseudo-circles are (convex) sites, every pair of which has at most two intersecting points. The Voronoi diagram is constructed incrementally. Our first contribution is to propose robust and...
متن کاملComputational geometry for curved objects: Voronoi diagrams in the plane
We examine the problem of computing exactly the Delaunay graph (and the dual Voronoi diagram) of a set of, possibly intersecting, smooth convex pseudo-circles in the Euclidean plane, given in parametric form. Pseudo-circles are (convex) closed curves, every pair of which has at most two intersection points. We propose robust end efficient algorithms for all required predicates under the exact c...
متن کاملConvex Hull and Voronoi Diagram of Additively Weighted Points
We provide a complete description of dynamic algorithms for constructing convex hulls and Voronoi diagrams of additively weighted points of R. We present simple algorithms and provide a complete description of all the predicates. The algorithms have been implemented in R and experimental results are reported. Our implementation follows the CGAL design and, in particular, is made both robust and...
متن کاملRobustness and efficiency of geometric programs: The Predicate Construction Kit (PCK)
In this article, I focus on the robustness of geometric programs (e.g., Delaunay triangulation, intersection between surfacic or volumetric meshes, Voronoi-based meshing . . . ) w.r.t. numerical degeneracies. Some of these geometric programs require “exotic” predicates, not available in standard libraries (e.g., J.-R. Shewchuk’s implementation and CGAL). I propose a complete methodology and a s...
متن کامل